package date1201.annotation;

import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
import javax.annotation.Resource;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Component;

import dog.bean.Person;

/**
 * @author Yue
 * @date 2017年12月1日 上午11:40:06
 */
@Component
@Lazy(true)
public class LiveCycle {
	// 执行 Field 注入
	@Resource(name = "teacher")
	private Person person;

	@PostConstruct
	public void init() {
		System.out.println("正在执行初始化的 init 方法...");
	}
	@Autowired
	@Qualifier("steelAxe")
	public void setPerson(Person person) {
		this.person = person;
	}
	@PreDestroy
	public void close() {
		System.out.println("正在执行销毁之前的 close 方法...");
	}
}
